home *** CD-ROM | disk | FTP | other *** search
/ Complete Linux / Complete Linux.iso / docs / apps / database / postgres / postgre2.z / postgre2 / doc / release2.0.doc < prev    next >
Encoding:
Text File  |  1992-08-27  |  5.2 KB  |  148 lines

  1. Introduction
  2.  
  3. These notes describe the known bugs, anomalies, and machine-dependencies
  4. in the current POSTGRES release.
  5.  
  6. Copyright
  7.  
  8. The copyright for the 2.1 release of the POSTGRES DBMS is as follows.
  9.  
  10. POSTGRES Data Base Management System
  11.  
  12. Copyright (c) 1988 Regents of the University of California
  13.  
  14. Permission to use, copy, modify, and distribute this software and its
  15. documentation for educational, research, and non-profit purposes and
  16. without fee is hereby granted, provided that the above copyright
  17. notice appear in all copies and that both that copyright notice and
  18. this permission notice appear in supporting documentation, and that
  19. the name of the University of California not be used in advertising
  20. or publicity pertaining to distribution of the software without
  21. specific, written prior permission.  Permission to incorporate this
  22. software into commercial products can be obtained from the Campus
  23. Software Office, 295 Evans Hall, University of California, Berkeley,
  24. Ca., 94720.  The University of California makes no representations
  25. about the suitability of this software for any purpose.  It is
  26. provided "as is" without express or implied warranty.
  27.  
  28. Organization
  29.  
  30. The rest of these notes are organized into three parts:
  31.  
  32. Bugs, Machine Assumptions and Port Notes, and 2.1 Upgrades over 2.03
  33.  
  34. I.  Bugs
  35.  
  36. Compiling:
  37.  
  38. Postgres cannot compile on our Sequent using the standard 'make' or the
  39. make provided in /usr/att/bin.  If you encounter problems with the 'make'
  40. on your Sequent, please contact your Sequent technical support contact for
  41. further instructions.  It should compile without problems on all other
  42. supported platforms.  Users are welcome to try GCC (with the -traditional
  43. option) but we have never gotten it to correctly compile Postgres.
  44.  
  45. The Terminal Monitor and Postmaster:
  46.  
  47. The Terminal Monitor can only run one query at a time.  If multiple queries
  48. are executed with one Go command (\g), unpredictable behavior will result,
  49. although in general either the first query will execute or a parser error will
  50. occur.
  51.  
  52. If you start up two postmaster's on the same machine using the same port,
  53. bizarre behavior may result.
  54.  
  55. Security Hole Bug:
  56.  
  57. Postgres does not check to make sure that a user has permission to delete tuples
  58. out of system classes.  This means that anyone can delete anyone else's
  59. database instance out of pg_database, for example, or can delete built-in types.
  60. So users should be careful to avoid such things, and Postgres should not be
  61. used for secure applications.
  62.  
  63. The Rewrite Rule System:
  64.  
  65. The Query Rewrite Rule System, and functions dependent on it, is known to have
  66. bugs.  These will be addressed in the next release - until that time, it is
  67. suggested that the following commands be avoided:
  68.  
  69. o  Define View
  70. o  Define Version
  71. o  Define Rewrite Rule
  72. o  Define POSTQUEL procedure
  73.  
  74. However, the Instance-level Rule System works well.
  75.  
  76. II.  Postgres Machine and OS Assumptions
  77.  
  78. Postgres requires the following to be present on a system:
  79.  
  80. 1.  A truly compatible System V.3 'make'.  We have found that many vendors claim
  81.     compatibility in this regard, but their make's cannot compile Postgres.
  82.  
  83. 2.  A Unix 4.2 BSD kernel with System V shared memory extensions, or a System
  84.     V kernel with 4.2BSD extensions for sockets and various CLIB functions.
  85.  
  86. 3.  The C shell and Bourne shell for various installation and 'make' scripts.
  87.  
  88. 4.  For the dynamic loader, a Sun or COFF compatible A.OUT format is best.
  89.  
  90. Postgres Machine Assumptions:
  91.  
  92. Postgres assumes that
  93.  
  94. sizeof(char) = 1
  95. sizeof(short) = 2
  96. sizeof(long) = 4
  97. sizeof(char *) = 4
  98.  
  99. In the very least, Postgres assumes:
  100.  
  101. sizeof(char) < sizeof(short) <= sizeof(char *) <= sizeof(long) 
  102.  
  103. If problems are encountered with alignment and such in doing ports, it may be
  104. because these assumptions are not true on the target platform.  If this is
  105. true, some parts of the access method code may have to be rewritten.
  106.  
  107. If the above assumptions are true, porting Postgres should be straightforward,
  108. except for the dynamic loader.
  109.  
  110. III.  Differences between 2.1 and 2.03:
  111.  
  112. Much internal code has been rewritten, largely in access methods, caching
  113. and buffer management, and other low-level routines.
  114.  
  115. Visible Changes from 2.03:
  116.  
  117. o  The "rtree" access method now works.  
  118.  
  119. o  Btree indices can now be defined on arbitrarily long fields. 
  120.  
  121. IV. On Ports:
  122.  
  123.     Support for the following have been DISCONTINUED:
  124.  
  125.     1.  Ultrix on DECstations below 4.0      (We do support Ultrix 4.0 and up)
  126.  
  127.     We have discontinued support for these due to OS bugs which were fixed in
  128.     later releases of these operating systems.  These OS bugs primarily
  129.     affect the dynamic loader.  The DECstation Ultrix port for systems below
  130.     4.0 will continue to be distributed, but it is now unsupported.
  131.  
  132.     Support for the following will be DISCONTINUED SOON:
  133.  
  134.     1.  SunOS on Sun 3's less than 4.0.
  135.  
  136. More on the dynamic loader:
  137.  
  138. 1.  Make sure files you are loading do not reference symbols (either variables
  139.     or functions) in each other.  If you do this, it will work, but you cannot
  140.     re-load files once they are loaded.  Doing this will have unpredictable
  141.     results.
  142.  
  143. Diskless Machines:
  144.  
  145. We have successfully ran Postgres on diskless Sparcstations, but diskless
  146. Sun 3's have occasionally posed problems.  We have never run diskless on
  147. DECstations or on Sequents.
  148.